CD
Canvas Draw - Uma Biblioteca Gráfica 2D
Versão 4.1

Visão Geral

Canvas Draw (CD) é uma biblioteca gráfica independente de plataforma. Ela é implementada em diversas plataformas utilizando bibliotecas gráficas nativas: Microsoft Windows (GDI), Macintosh (QuickDraw) e X-Windows (XLIB).

A biblioteca contém funções para suportar aplicações tanto de textos quanto de imagens, e a superfície de visualização pode ser um canvas ou uma superfície mais abstrata, como: Clipboard, Metafile, Postscript, etc.

Para simplificar a Application Programmers Interface (API - interface para programadores de aplicações), todos os dados são tipos básicos de C (int, double ou char). Assim, a aplicação não precisa manter estruturas de dados paralelas para lidar com a biblioteca gráfica.

Além disso, a lista de parâmetros das funções de primitivas da biblioteca CD contém apenas as descrições geométricas dos objetos (linhas, círculos, texto, etc.). As informações a respeito de onde esses objetos devem aparecer e qual a sua cor, espessura, etc. são definidas como variáveis de estado corrente armazenadas nas superfícies de visualização. Isto é, a biblioteca é orientada para a superfície de visualização, o que significa que todos os atributos são armazenados em cada superfície de visualização.

Para controlar onde as primitivas serão desenhadas existe o conceito de canvas ativo (superfície de visualização). Isso significa que é preciso ativar uma dada superfície se você desejar desenhar sobre ela. Como já foi dito, esta abordagem simplifica o desenho para muitas primitivas, então não é necessário passar o canvas como um parâmetro em cada primitiva. Por outro lado, se não houver um canvas ativo, uma chamada a uma primitiva causará uma invasão de memória.

Visando manter a biblioteca CD pequena, suas funções não impedem o uso errôneo pela aplicação do programador - tenha cuidado e aproveite!

Disponibilidade

A biblioteca está disponível para diversos compiladores:

A biblioteca está disponível para diversos sistemas operacionais:

(1) Windows NT em máquinas x86, Windows 95 e Windows 3.xx + Win32s. Caso você não tenha o último Win32s, faça um download do arquivo WIN32S.ZIP (2.41Kb).

Aquisição

Os direitos de distribuição da biblioteca pertencem à PETROBRAS / CENPES. Contudo, ela está disponível para instituições acadêmicas. Para receber uma cópia da biblioteca, contate o departamento SECOMT, no CENPES / PETROBRAS através do telefone (55-21) 598-6092 e informe que você deseja adquirir uma biblioteca criada pelo Tecgraf. Também será necessário informar que compilador e sistema operacional são utilizados. Os disquetes lhe serão enviados por correio.

Equipe

Antonio Escaño Scuri - Administrador e Desenvolvedor responsável pela manutenção do produto - scuri@tecgraf.puc-rio.br
Camilo Freire - driver CGM - camilo@tecgraf.puc-rio.br
André Derraik - drivers da plataforma Macintosh - andre@tecgraf.puc-rio.br
Alexandre - driver Direct X - alexgf@tecgraf.puc-rio.br

Todas as pessoas envolvidas no desenvolvimento da biblioteca trabalham no Tecgraf, possuindo simultaneamente outras responsabilidades. Assim, uma falha comunicada pode não ser corrigida imediatamente.

Suporte

O mecanismo oficial de suporte é por e-mail. Envie uma mensagem para cd@tecgraf.puc-rio.br. Antes de enviar a mensagem verifique se o seu procedimento está correto:

Se todas as alternativas acima foram esgotadas, reporte o problema especificando na sua mensagem: função, elemento, driver, plataforma e compilador.

Existe ainda uma outra forma de fazer sugestões e também participar mais intensamente do processo de evolução do CD, que é através de uma lista de discussões. Esta lista é usada também para discussões sobre todas as bibliotecas da área básica do Tecgraf (IUP, IM, G3D, etc). Para se cadastrar na lista basta enviar um e-mail para listproc@tecgraf.puc-rio.br com o texto "subscribe tecgraf-l <seu nome>" no corpo da mensagem. Depois basta enviar uma mensagem para tecgraf-l@tecgraf.puc-rio.br, a diferença é que todas as pessoas cadastradas na lista irão receber a sua mensagem. Portanto, use a lista somente para assuntos que interessem a todos e não somente para reportar de erros. Para se remover da lista envie uma mensagem para listproc@tecgraf.puc-rio.br com o texto "unsubscribe tecgraf-l" no corpo da mensagem.

Para obter mais informações sobre a biblioteca entre em contato com o Tecgraf usando o endereço: tecgraf@tecgraf.puc-rio.br

Copyright

Copyright © 1994-1997 PETROBRAS. Produto desenvolvido no grupo de desenvolvimento Tecgraf / PUC-Rio. Todos os direitos são reservados.

O nome "CD - Canvas Draw" não pode ser usado para qualquer forma modificada deste software que não seja desenvolvida pelos autores. Entretanto, o nome "CD - Canvas Draw" pode e deve ser usado para designar a biblioteca implementada e descrita neste pacote, mesmo se incorporada a qualquer outro sistema, desde que suas funções permaneçam inalteradas.

Os autores especificamente negam quaisquer garantias, incluindo mas não estando restritas às garantias implícitas de comercialização e apropriação para um fim em particular. O software fornecido através deste deve ser aceito como está, e os autores ficam livres da obrigação de fornecer manutenção, suporte, atualizações, melhorias ou modificações. Em nenhuma hipótese a PETROBRAS, o CENPES, o Tecgraf, a PUC-Rio ou os autores responderão por quaisquer danos diretos, indiretos, incidentais ou conseqüentes derivados da utilização deste software e de sua documentação.

Agradecimentos

Este trabalho foi desenvolvido no Tecgraf / PUC-Rio, sendo patrocinado pelo CENPES / PETROBRAS. Gostaríamos de agradecer ao pessoal do SEPROC, no CENPES, e aos criadores da biblioteca, Marcelo Gattass, Luiz Henrique de Figueiredo, Luiz Fernando Martha e Carlos Henrique Levy.

Muito obrigado às pessoas que trabalharam diretamente na biblioteca:
- Carlos Cassino (driver da plataforma X-Windows, driver Postscript e funções WD),
- Renato Borges (driver da plataforma X-Windows e funções WD),
- Marcelo Gattass (drivers da plataforma Microsoft Windows),
- Carlos Augusto Mendes (drivers da plataforma DOS),
- Carolina Alfaro (pela tradução do manual para Português e correções no texto em Inglês).
- Diego Fernandes Nehab (drivers da plataforma DOS, ligação com Lua)
- Vinicius da Silva Almendra (driver DGN)
- Milton Jonathan (driver DXF)
- Pedro Miller (driver DirectX)
- Erick de Moura Ferreira (driver de Imagem de Cliente RGB e driver de Simulação)

Aos desenvolvedores das bibliotecas FreeType e Mesa, e do programa XV pela disponibiblidade do código fonte que nos ajudou a melhorar nossa implementação do driver de simulação e do driver X-Windows.

Sobre o CD Online

Este manual está disponível em http://www.tecgraf.puc-rio.br/manuais/cd. As páginas foram criadas utilizando HTML 3.2 e JavaScript 1.1. Elas são melhor vistas e percorridas com Internet Explorer 4 (ou posterior) ou Netscape 4 (ou posterior). Embora sejam vistas no Netscape 3, não são vistas no Internet Explorer 3.

Usando o Microsoft Word 97 geramos uma versão impressa deste manual, que também está disponível em formato Adobe Acrobat (CD.PDF 1Mb).

Este manual foi criado usando o toolkit de criação de manuais ManJS, que pode ser encontrado em http://www.tecgraf.puc-rio.br/~scuri/manjs.